'use strict'

const Produto = require('../models/produto.model')

const ProdutoController = {

	GetProduto: (req, res, next) => {
		Produto.find({ _id: req.params.id }, (err, produto) => {
			if (err) { res.json({ status: false, message: "Ocorreu um erro!" }) }
			else{
				res.json({ status: true, produtos: produto })
			}
		})
	},
	GetProdutos: (req, res, next) => {
		Produto.find({}, (err, produtos) => {
			if (err) { res.json({ status: false, message: "Ocorreu um erro!" }) }
			else{
				res.json({ status: true, produtos: produtos })
			}
		})
	},
	PostProduto: (req, res, next) => {
		console.log(req.body)
		const produto = new Produto(req.body)
		console.log(produto)
		produto.save((err)=> {
			if (err) { 
				res.json({ status: false, message: "Ocorreu um erro!" }) 
			}else{
				res.json({ status: true, message: 'Produto adicionado com sucesso!' })
			}
		})
	},
	UpdateProduto: (req, res, next) => {
		Produto.findById({_id: req.params.id}, (err, produto) => {
			produto.name = req.body.name
			produto.save((err, produto) => {
				if (err) { res.json({ status: false, message: "Ocorreu um erro!" }) }
				else{
					res.json({ status: true, message: 'Produto editado com sucesso!' })
				}				
			})
		})
	},
	DeleteProduto: (req, res, next) => {
		Produto.delete({_id: req.params.id }, (err, produto ) => {
			if (err) { res.json({ status: false, message: "Ocorreu um erro!" }) }
			else{
				res.json({ status: true, message: 'Produto deletado com sucesso!' })
			}
		})
	}

}

module.exports = ProdutoController